There is a long history of using geographic location systems in cooperation with applications that provide a user benefit. An early example of this is the LORAN system developed by the British during World War 2 for military purposes. LORAN uses multiple low-frequency radio transmitters to locate the position of an object and determine its speed. The United States Navy created a sequence of position locating systems during the 1960s and 1970s including Transit, Timation, and the Omega navigation system. A more recent and better known example of such a system is the NAVSTAR GPS, usually referred to as the “GPS” system, that uses a constellation of earth orbit satellites and its microwave signals to determine the current position, time, and velocity of an object. While each of these successive systems improved accuracy, each was limited to producing some combination of position, time, and velocity.
Over time, improvements to the basic idea of GPS developed. One such example is the concept of geo-fences. Geo-fences are virtual boundaries overlaid on a geographical area. Geo-fences are one type of a location-based service that detects when an object crosses (enters or exits) one or more of these virtual boundaries. These geo-fences can be used for tracking children, livestock, and wildlife crossing certain virtual boundaries. Furthermore, geo-fences have now been extended to large retail environments to track customer flows and the like.
In addition to the position, navigation systems, and functionality provided by the prior art, other technologies have developed, such as speech-recognition systems.
Speech recognition is the ability of a machine or program to identify words and phrases in spoken language and convert them to a machine-readable format. Applications of speech recognition include call routing, speech-to-text, voice dialing, and voice search.
FIG. 1 depicts the salient elements of speech-recognition system 100, in accordance with the prior art. As shown in FIG. 1, speech-recognition system 100 comprises feature extractor 101, acoustic modeler 102, and decoder 103, interconnected as shown.
Feature extractor 101 comprises software, hardware, or both, that is capable of receiving an input electromagnetic signal that represents speech (e.g., a signal obtained from a user speaking into a microphone, etc.) and of extracting features (e.g., phonemes, etc.) from the input signal (e.g., via signal processing techniques, etc.).
Acoustic modeler 102 comprises software, hardware, or both, that is capable of receiving features generated by feature extractor 101 and of applying an acoustic model (e.g., a Gaussian statistical model, a Markov chain-based model, etc.) to the features.
Decoder 103 comprises software, hardware, or both, that is capable of receiving output from acoustic modeler 102, and of generating output in a particular language based on the output from acoustic modeler 102, a lexicon for the language, and a grammar for the language. For example, the lexicon might be a subset of the English language (e.g., a set of relevant English words for a particular domain, etc.), and the grammar might be a context-free grammar comprising the following rules:
SENTENCE→NOUN-PHRASE VERB-PHRASE
NOUN-PHRASE→ARTICLE NOUN|ARTICLE ADJECTIVE NOUN|NOUN
VERB-PHRASE→VERB ADVERB|VERB
Alternatively, the grammar might be a statistical grammar that predicts the probability with which a word or phrase is followed by another word or phrase (e.g., the probability that the phrase “Voice over” is followed by the phrase “IP” might be 0.7, etc.)